/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package etl;

import adapdateurs.Adapdateur;
import adapdateurs.BateauSQL;
import adapdateurs.HotelDeXml;
import adapdateurs.PaysCSV;
import adapdateurs.VolsSQL;
import moyensDeTransport.Bateau;
import org.jdom2.Element;

/**
 *
 * @author BENAMMAR Riyadh
 */
public class Transform {
    
    private String nom;
    private String typeInterface;// parseur, JDBC, etc.
    private String format;//sql, xml, etc.
    private String stats;
    private Adapdateur adapdateur;
    private String frequenceMAJ;
    private String typeAcces;// local ou url
    
    public void appliquer(Element element){
        mapping(element);
    }

    public String getNom() {
        return nom;
    }

    public String getTypeInterface() {
        return typeInterface;
    }

    public String getFormat() {
        return format;
    }

    public String getStats() {
        return stats;
    }

    public Adapdateur getAdapdateur() {
        return adapdateur;
    }

    public String getFrequenceMAJ() {
        return frequenceMAJ;
    }

    public String getTypeAcces() {
        return typeAcces;
    }

    private void mapping(Element element) {
        nom=element.getChildText("nom");
        typeInterface=element.getChildText("typeinterface");
        format=element.getChildText("format");
        stats=element.getChildText("statschargement");
        String tmp=element.getChildText("adapdateur");
        System.out.println("adap: "+tmp);
        if(tmp.contains("HotelDeXml"))adapdateur=new HotelDeXml();
        else if(tmp.contains("VolsSQL"))adapdateur=new VolsSQL();
        else if(tmp.contains("PaysCSV"))adapdateur=new PaysCSV();
        else if(tmp.contains("BateauSQL"))adapdateur=new BateauSQL();
        /*switch(tmp){
            case "HotelDeXml": 
                System.out.println("1");break;
            case "VolsSQL": System.out.println("2");break;
            case "PaysCSV": System.out.println("3");break;
        }*/
        //System.out.println("traduction: "+adapdateur.traduire("pays"));
        frequenceMAJ=element.getChildText("frequencemiseajour");
        typeAcces=element.getChildText("typeacces");
    }
}
